package com.atguigu.vip.spring.framework.core;

/**
 * 单例工厂的顶层设计
 *
 */
public interface GPBeanFactory {

    /**
     * 根据beanName从IOC容器中 获取一个实例bean
     * IOC容器一般而言，是一个单例对象。一般单例需要私有构造方法，并提供一个全局访问点。这个方法就是全局访问点
     * 为什么IOC容器是单例呢？   如果是多个容器，那么是不利于管理的。只有一个容器，不管是存还是取，都方便管理
     *
     */
    Object getBean(String beanName) throws Exception;


    Object getBean(Class<?> beanClass)  throws Exception;


}
